home *** CD-ROM | disk | FTP | other *** search
/ Technotools / Technotools (Chestnut CD-ROM)(1993).ISO / misc_pto / alcocer / read.me < prev   
Text File  |  1988-09-29  |  4KB  |  108 lines

  1.  
  2.     CALLS.M
  3.     -------
  4.  
  5.     BRIEF Macro Contest,
  6.     submitted by Darío Alcocer.
  7.  
  8.     (written using BRIEF version 2.1)
  9.  
  10.  
  11.     Have you you ever, while typing furiously at the keyboard, needed to
  12.     know what the parameter list for calling an obscure C library function,
  13.     only to become frustrated by having to leave your PC, look up the
  14.     function in your C manual, and then forget why you needed to use that
  15.     function in the first place?  You could call the header file into BRIEF
  16.     (which header file it is in, anyway) and copy the funtion prototype, but
  17.     would you want to do this every time?  This macro, calls.m, is designed
  18.     to make calling the C standard library functions a little easier.  It
  19.     uses the BRIEF Dialog Manager package to display a neat and tiddy window,
  20.     prompting you for all the parameters you need to make a call to
  21.     the function of interest.
  22.  
  23.  
  24.  
  25.     The following files form the complete package:
  26.  
  27.         calls.m        The BRIEF macro file, searches and displays
  28.                        the functions in your C function file.
  29.  
  30.         calls.dat      Special C function file, used by calls.cm
  31.                        (functions for Microsoft C, version 5.1)
  32.  
  33.         mkcalls.c      Source for mkcalls.exe. Used Microsoft C,
  34.                        version 5.1, though it should port to any
  35.                        ANSI C compiler.
  36.  
  37.         mkcalls.exe    Used to convert a file containing only
  38.                        ANSI-standard C function prototypes to the
  39.                        *.dat file format needed by calls.cm
  40.  
  41.         read.me        This file.
  42.  
  43.  
  44.     The conversion program, mkcalls.exe, reads from the standard input
  45.     and writes to the standard output.  The command-line syntax is
  46.  
  47.                        mkcalls < infile > outfile
  48.  
  49.     The conversion takes a file that looks like this:
  50.  
  51.  
  52.                        int foo(int x, char *y)
  53.                        char goo(void *ptr, unsigned b)
  54.                        ...
  55.  
  56.  
  57.     into a data file like so:
  58.  
  59.                        ;foo;
  60.                        T(1,3)="int foo():"
  61.                        T(3,3)="int x"
  62.                        S(3,25)=" "
  63.                        T(4,3)="char *y"
  64.                        S(4,25)=" "
  65.                        ;
  66.                        2
  67.  
  68.                        ;goo;
  69.                        T(1,3)="int goo():"
  70.                        T(3,3)="void *ptr"
  71.                        S(3,25)=" "
  72.                        T(4,3)="unsigned b"
  73.                        S(4,25)=" "
  74.                        ;
  75.                        2
  76.  
  77.     The name of the output file is not critical; the c_call macro looks
  78.     for the file "calls.dat", but you can name it anything you want 
  79.     (don't forget to change the #define at the top of calls.m, though).
  80.     Make sure that this file, whatever you name it, resides in you BHELP
  81.     directory, or where all the other BRIEF dialog data and menu files are.
  82.     To create an input file, copy only the funtion prototypes from each
  83.     header file (leave out #defines, typdefs, etc.), and put each fucntion
  84.     prototype on a separate line, without leaving any blank lines.  Then,
  85.     use mkcalls.  If you'd like to verify your results, check against
  86.     the calls.dat file to see that it is in the same basic format.
  87.  
  88.  
  89.     The general dat file format is as follows:
  90.  
  91.                        ;<name of function>;
  92.  
  93.                        < dialog data here >
  94.  
  95.                        ;
  96.                        <number of paramters, must be less than 6>
  97.  
  98.  
  99.  
  100.  
  101.     If you have any questions, leave E-mail at this address:
  102.  
  103.                        Darío Alcocer
  104.                        CompuServ
  105.                        72411,430
  106.  
  107.     Enjoy!!
  108.